
#ifndef _MEMBER_BDOUBLESPINBOX_H_
#define _MEMBER_BDOUBLESPINBOX_H_

#include <BDoubleSpinBox>
#include <BString>

namespace BWE
{
	class member_BDoubleSpinBox
	{
	public:
		member_BDoubleSpinBox(BDoubleSpinBox* spinbox);
		~member_BDoubleSpinBox();

		void keepPrecision(BString& str);
		bool freshRects();

		BDoubleSpinBox*		boss;
		Align				align;
		double				value;
		int					decimals;
		double				step;
		BRanged				range;
		BString				text;
		BString				buffer;
		BString				prefix;
		BString				suffix;
		bool				buttonShown;

		bool				dirty;
		bool				editing;
		bool				justFocused;
		bool				pressed;
		int					pressedIndex;
		BRect				prefixRect;
		BRect				textRect;
		BRect				suffixRect;
		int					hoverIndex;
		int					inputIndex;
		int					inputCount;
		bool				inputShown;
		BArray<BRect>		rects;
	};
}

#endif